home *** CD-ROM | disk | FTP | other *** search
-
-
- TIERRA Genebank Probe
- by Daniel Pirone
-
-
- PURPOSE:
-
- This document describes a software tool that aids in the analysis of the
- large amount of "genebank" data generated by the Tierra Artificial Life
- Simulation (1). "Probe" allows an automated filtering of genebank data
- ( tierra creature data files ), by selection of 10 major gene descriptives
- ( e.g. size ). Probe is an excellent companion tool to Beagle, a graphical
- analysis tool, also bundled with the MSDOS version of Tierra.
-
- THE INTERFACE:
-
- The Probe user interface is a simple menu driven system. All of the
- menu options are Case Sensitive (Turn Caps Lock Off).
- In most cases:
- - if you wish to leave a value unchanged, press <Enter> when prompted for
- a new value.
- - all numeric parameters ( options 1 - 8 ) can have the wildcard value -1,
- (negative one), meaning "don't care", which will match any value.
- - pressing escape <ESC> , will take you to the previous interface level,
- and will Exit the program if done from the main menu.
-
- The main interface looks like the following:
-
-
- > TIERRA Genebank Probe by Daniel Pirone
- >
- > 1 - Size (-1)
- > 2 - Label ( -1)
- > 3 - MaxPropPop threshold [0-100]% (-1)
- > 4 - MaxPropInst threshold [0-100]% (-1)
- > 5 - Begin Time of MaxPropPop threshold cross (-1,-1)
- > 6 - End Time of MaxPropPop threshold cross (-1,-1)
- > 7 - Begin Time of Origin (-1,-1)
- > 8 - End Time of Origin (-1,-1)
- > 9 - Watch Bit String [0,1,?] (????????????????????????????????)
- > Watch Bit String (EXsdofh TCsdofh TPsdofh MFsdofh MTsdofh MBsdofh )
- > f - Toggle file type (gen)
- > i - Genebank Input directory (gb/)
- > o - Match Output directory (td/)
- > m - Opcode - Instruction Map file (opcode.map)
- > v - Set Gene Output viewer (vi)
- > G - Begin Probe
- >
- >
- > PROBE | (1-9) = edit param, 0 = init params, G=go <ESC> = quit ->
- >
-
- At this point you may enter a digit 1-9 to edit the corresponding parameter,
- or 0 to set them to their initial don't care values. Additionally, you
- can specify:
- - select permanent or temporary gene files,
- - an input path & directory for genebank data,
- - an output path & directory for ascii format gene data,
- - your favorite text viewing executable,
-
- All of these options are detailed below.
-
- Gene Size:
-
- > PROBE | (1-9) = edit param, 0 = init params, G=go <ESC> = quit -> 1
- > Enter Size [-1 = don't care] ->
-
- Parameter 1 allows you to select for a specific size of gene.
-
- Gene Label:
-
- > PROBE | (1-9) = edit param, 0 = init params, G=go <ESC> = quit -> 2
- > Enter Label [-1 = don't care, aaa-zzz] ->
-
- Parameter 2 allows you to select for a specific gene sequence.
- In combination with the size parameter, you can easily extract
- and genome of your choice.
-
- MaxPropPop & MaxPropInst:
-
- > PROBE | (1-9) = edit param, 0 = init params, G=go <ESC> = quit -> 3
- > Enter threshold [-1 = don't care, 0-100]% ->
-
- Parameters 3 and 4 allow you to select a percent threshold for the
- maximum proportion of the population (MPP) and/or max. proportion of
- instructions ( bytes of "soup" ) that a gene has attained.
- A gene will be selected if its MPP/MPI was greater than or equal to the
- percentage you enter. Reasonable values for MPP are 5 - 30, for normally
- diverse runs. Values higher than 30 % usually indicate a "mutual exclusion"
- scenario. In combination with with the MPP time window, you can easily find
- a dominant genome of your choice.
-
- MaxPropPop Time Window & Gene Origin Time Window:
-
- > PROBE | (1-9) = edit param, 0 = init params, G=go <ESC> = quit -> 5
- > Enter millions , insts [-1 = don't care] ->
-
- These two part parameters allow you to specify a temporal window
- in which to look for a MPP threshold ( param 3 ) crossing, or
- the Origin of a gene. For both the Begin and End time specifications,
- your input can take the form:
- m
- or
- m,i
- Where m is a -1 for don't care, or a non-negative integer representing
- a number of millions of Tierrian instructions executed, and i is the
- remainder of instructions executed. If only a single number is entered,
- it is assumed to be the millions part.
-
- Watch Bits String:
-
- > PROBE | (1-9) = edit param, 0 = init params, G=go <ESC> = quit -> 9
-
- This complex parameter allows you to look for a specific behavioral trait
- (eg: writing on its own memory, using someone elses template)
- For each of the following 30 parameters, you may :
- - press <Enter> to leave the value as it is,
- - enter a 1/0 to look for the presence of this trait,
- - enter a ? for don't care
- - press <ESC> to return to the main menu, leaving the rest of the 30
- Watch Bits as they were.
-
- The Watch bits are:
-
- Bit 2 EXs = executes own instructions (self)
- Bit 3 EXd = executes daughter's instructions
- Bit 4 EXo = executes other cell's instructions
- Bit 5 EXf = executes instructions in free memory
- Bit 6 EXh = own instructions are executed by other creature (host)
- Bit 7 TCs = matches template complement of self
- Bit 8 TCd = matches template complement of daughter
- Bit 9 TCo = matches template complement of other
- Bit 10 TCf = matches template complement of free memory
- Bit 11 TCh = own template complement is matched by other creature (host)
- Bit 12 TPs = uses template pattern of self
- Bit 13 TPd = uses template pattern of daughter
- Bit 14 TPo = uses template pattern of other
- Bit 15 TPf = uses template pattern of free memory
- Bit 16 TPh = own template pattern is used by other creature (host)
- Bit 17 MFs = moves instruction from self
- Bit 18 MFd = moves instruction from daughter
- Bit 19 MFo = moves instruction from other cell
- Bit 20 MFf = moves instruction from free memory
- Bit 21 MFh = own instructions are moved by other creature (host)
- Bit 22 MTs = moves instruction to self
- Bit 23 MTd = moves instruction to daughter
- Bit 24 MTo = moves instruction to other cell
- Bit 25 MTf = moves instruction to free memory
- Bit 26 MTh = is written on by another creature (host)
- Bit 27 MBs = executing other creatures code, moves inst from self
- Bit 28 MBd = executing other creatures code, moves inst from daughter
- Bit 29 MBo = executing other creatures code, moves inst from other cell
- Bit 30 MBf = executing other creatures code, moves inst from free memory
- Bit 31 MBh = other creature uses another cpu to move your instructions
-
- For a more detailed description of the Watch Bits, see the Tierra Users Guide
- (and/or the source code!).
-
- Gene File Type:
-
- > PROBE | (1-9) = edit param, 0 = init params, G=go <ESC> = quit -> f
-
- The f option allows you to choose to scan permanent genes (.gen files),
- or temporary genes (.tmp files) generated as Tierra shut down. Temporary
- gene files generally contain "less fit" genes.
-
- GENE OUTPUT VIEWER:
-
- > PROBE | (1-9) = edit param, 0 = init params, G=go <ESC> = quit -> v
-
- The v option allows you to choose a path and executable file
- ( and limited command line options ) used to view the ascii format of
- the selected genes. These gene files are written to the Output
- directory ( 'o' option ). In Unix, you might use more, less, vi, cat ...
- In MSDOS, the default 'more <' is ok, but something more like the
- EDIT program that comes with DOS 5.x is better. The syntax of the
- system shell call is roughly:
-
- path/viewer.exe options output_path/gene
- ----- v option -------- -- o ------ - found file ( eg 0080aaa )
- If no path is specified, the executable must be in you path.
-
- PROBING THE GENEBANK:
-
- > PROBE | (1-9) = edit param, 0 = init params, G=go <ESC> = quit -> G
-
- Once you have entered all the parameters you care to specify, entering
- a capitol G will initiate the search. The first thing Probe will do
- is read in the opcode mapping file you have specified with the 'm'
- parameter. The file is assumed to be in the same directory as the Genebank
- input files, ( the 'i' parameter ). This is used to decode the numeric
- instructions to a human digestible from. The default ( opcode.map ) is
- usually fine, but Please take care that if you use a different mapping,
- that you specify it!
-
- After pressing the G, you can stop the search with your break key
- <Control-C>, (or <ESC> in MSDOS ). When the search starts you will see:
-
- > BEGIN Probing Genebank
- >
- > scanning archive |gb//0080.gen|
-
- The filename should flash as Probe looks through the files.
- If Probe finds a genome that matches your parameter settings:
-
- > 0080aaa
- > Enter y to show , ESC to break out, any other key to continue ->
-
- At this point you may enter a 'y' to use the viewer ( 'v' option )
- to look at an ascii format of the gene that has been written to the
- Output directory ( 'o' option ). Pressing <ESC> will take you back to the
- main menu, and any other key will continue the search.
-
- > Enter y to show , ESC to break out, any other key to continue ->y
-
- > format: 2 bits: 45750471 EXsh TCsh TPs MFsofh MTdf MB
- > genotype: 0080aaa parent genotype: 6666god
- > 1st_daughter: flags: 0 inst: 827 mov_daught: 80 breed_true: 1
- > 2nd_daughter: flags: 0 inst: 809 mov_daught: 80 breed_true: 1
- > Origin: InstExe: 0,0 clock: 0 Wed Dec 31 17:00:00 1969
- > MaxPropPop: 0.8306 MaxPropInst: 0.4239 mpp_time: 0,0
- > ploidy: 1 track: 0
- >
- > track 0: prot
- > xwr
- > nop_1 ; 010 110 01 0
- > nop_1 ; 010 110 01 1
- > nop_1 ; 010 110 01 2
- > nop_1 ; 010 110 01 3
- > zero ; 010 110 04 4
- > or1 ; 010 110 02 5
- > shl ; 010 110 03 6
- > shl ; 010 110 03 7
- > mov_cd ; 010 110 18 8
- >
- > ...
- >
- > ret ; 010 110 17 74
- > nop_1 ; 010 100 01 75
- > nop_1 ; 010 100 01 76
- > nop_1 ; 010 100 01 77
- > nop_0 ; 010 100 00 78
- > if_cz ; 010 000 05 79
- >
-
- > END Probing Genebank
-
- > Enter to continue
-
- Please send bug reports to : tierra-bug@life.slhs.udel.edu
-
- -----------------------------------------------------------------------------
-
- (1) Tierra is available by anonymous ftp from:
-
- tierra.slhs.udel.edu ( 128.175.41.33 )
-
- or on disk by mail from Virtual Life, P.O. Box 625, Newark, DE 19715.
- Make check for $65 payable to Virtual Life, and specify 3.5" or 5.25" disks.
-
- -----------------------------------------------------------------------------
-